# list：列表 and tuple：元组
# 列表和元组都是有序的集合，但是元组不可变

# 创建列表
classmates = ['Tom', 'Bob', 'Jane']
print(classmates)
# len() 函数, 获取列表长度
print(len(classmates))
# 索引
print(classmates[0])
print(classmates[-1]) # 索引从0开始，-1表示最后一个元素
print(classmates[len(classmates)-1]) # 索引从0开始，-1表示最后一个元素
#  修改
classmates[1] = 'Tom'
print(classmates)
# 添加 append()
classmates.append('Adam') # 添加元素到列表末尾
# 插入 insert()
classmates.insert(1, 'Jack') # 在指定位置插入元素
print(classmates)
# 列表切片
print(classmates[0:2]) # 切片 0-2，不包含2
# 删除 pop()
classmates.pop() # 删除末尾元素
print(classmates)
print(classmates.pop(1)) # 删除指定位置的元素
# 删除 del
del classmates[1] # 删除指定位置的元素
print(classmates)
# 多维list
car = ['Benz', ['A', 'B', 'C'], 'D']
print(car[1][1])

# tuple 元组 tuple 不能修改
classmates = ('Tom', 'Bob', 'Jane')
print(len(classmates)) # 获取长度
print(classmates[0]) # 索引，索引从0开始，-1表示最后一个元素
print(classmates[-1])
classmates = ('Tom',) # 元组只有一个元素时，必须加逗号
# 可变元组
classmates = list(classmates) # 转换成列表
classmates.append('Adam')
classmates = tuple(classmates) # 转换成元组
